package com.design.designmode.action.chain;

/**
 * 用户参加一个活动可以领取奖品，但是活动需要进行很多的规则校验然后才能放行，比如
 * 首先需要校验用户是否是新用户、
 * 今日参与人数是否有限额、
 * 全场参与人数是否有限额等等。设定的规则都通过后，才能让用户领走奖品
 *
 * @author hxl
 * @since 2023-04-17
 */
public abstract class RuleHandler {
    // 后继节点
    protected RuleHandler next;

    public void setNext(RuleHandler next) {
        this.next = next;
    }

    public RuleHandler getNext() {
        return next;
    }

    public abstract void apply(int request);
}
